/*

cimahis - Software para el analisis de imagenes de corte histologico

Copyright (C) Andrés De Abreu 2010 <jadabreu @ gmail . com>


Este programa es software libre. Puede redistribuirlo y/o modificarlo bajo los términos
de la Licencia Pública General de GNU según es publicada por la Free Software Foundation,
bien de la versión 2 de dicha Licencia o bien (según su elección) de cualquier versión
posterior.

Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA,
incluso sin la garantía MERCANTIL implícita o sin garantizar la CONVENIENCIA PARA UN
PROPÓSITO PARTICULAR. Véase la Licencia Pública General de GNU para más detalles.

Debería haber recibido una copia de la Licencia Pública General junto con este programa.
Si no ha sido así, escriba a la Free Software Foundation, Inc.,
en 675 Mass Ave, Cambridge, MA 02139, EEUU.

    //ACERCA DE visualizarhistograma.h
    *
    * Declaracion de la clase visualizarhistograma la cual se encarga de crear la interfaz
    * grafica para la visualización de los filtros
    *

*/


#ifndef VISUALIZARHISTOGRAMA_H
#define VISUALIZARHISTOGRAMA_H

#include <QMainWindow>
#include "color/fabricaObjetos.h"
#include "interfazSistema/interfazSistema.h"
#include "imagen.h"

namespace Ui {
    class VisualizarHistograma;
}

class VisualizarHistograma : public QMainWindow {
    Q_OBJECT
public:
    VisualizarHistograma(QWidget *parent = 0);
    ~VisualizarHistograma();
    void calcularHistogramas(IplImage *i); //calcular el(los) histograma(s) de la imagen
    void prepararInterfaz(); //preparar los datos necesarios en la interfaz grafica
    void actualizarDatosEstadisticos(histograma *a); //metodo para actualizar los datos de la interfaz, toma los datos del histograma que se pase como parametro


protected:
    void changeEvent(QEvent *e);

private:
    Ui::VisualizarHistograma *ui;
    histograma *histCanal1,*histCanal2,*histCanal3;
    IplImage * imagenMezcla,*imagenCanal1,*imagenCanal2,*imagenCanal3;
    QImage imagenInterfaz;
    fabricaObjetos f;
    string espacioColorHist;

private slots:
    void on_comboBox_currentIndexChanged(int index); //acción que se dispara cuando seleccionamos un elemento en el menu desplegable de la interfaz
};

#endif // VISUALIZARHISTOGRAMA_H
